﻿using System;
using SharpSqlAnalyzer.nodes;

namespace SharpSqlAnalyzer.stmt.mssql
{
	// Token: 0x02000177 RID: 375
	public class TMssqlFetch : TCustomSqlStatement
	{
		// Token: 0x06000D0D RID: 3341 RVA: 0x0030846B File Offset: 0x0030666B
		public TMssqlFetch(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstmssqlfetch;
		}

		// Token: 0x06000D0E RID: 3342 RVA: 0x0030847F File Offset: 0x0030667F
		internal override void buildsql()
		{
		}

		// Token: 0x06000D0F RID: 3343 RVA: 0x00308481 File Offset: 0x00306681
		internal override void clear()
		{
		}

		// Token: 0x06000D10 RID: 3344 RVA: 0x00308483 File Offset: 0x00306683
		internal override string getasprettytext()
		{
			return "";
		}

		// Token: 0x06000D11 RID: 3345 RVA: 0x0030848A File Offset: 0x0030668A
		internal virtual void iterate(TVisitorAbs pvisitor)
		{
		}

		// Token: 0x06000D12 RID: 3346 RVA: 0x0030848C File Offset: 0x0030668C
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			TFetchSqlNode tfetchSqlNode = (TFetchSqlNode)this.rootNode;
			base.doParseStatement(psql);
			this.cursorName = tfetchSqlNode.CursorName;
			this.variableNames = tfetchSqlNode.VariableNames;
			return 0;
		}

		// Token: 0x17000267 RID: 615
		// (get) Token: 0x06000D13 RID: 3347 RVA: 0x003084D0 File Offset: 0x003066D0
		// (set) Token: 0x06000D14 RID: 3348 RVA: 0x003084D8 File Offset: 0x003066D8
		public virtual TObjectName CursorName
		{
			get
			{
				return this.cursorName;
			}
			set
			{
				this.cursorName = value;
			}
		}

		// Token: 0x17000268 RID: 616
		// (get) Token: 0x06000D15 RID: 3349 RVA: 0x003084E1 File Offset: 0x003066E1
		// (set) Token: 0x06000D16 RID: 3350 RVA: 0x003084E9 File Offset: 0x003066E9
		public virtual TObjectNameList VariableNames
		{
			get
			{
				return this.variableNames;
			}
			set
			{
				this.variableNames = value;
			}
		}

		// Token: 0x06000D17 RID: 3351 RVA: 0x003084F2 File Offset: 0x003066F2
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000D18 RID: 3352 RVA: 0x00308502 File Offset: 0x00306702
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x040012FF RID: 4863
		private TObjectName cursorName;

		// Token: 0x04001300 RID: 4864
		private TObjectNameList variableNames;
	}
}
